/**
 * A listener interface to the ItemMaanger
 * 
 * @author remo.lemma@lu.unisi.ch and patrick.zulian@lu.unisi.ch
 */

package ch.unisi.inf.projects.java.uom.elements;

public interface ItemManagerListener {

	/** 
	 * An Element has been deleted
	 * @param e the element
	 */
	public void elementDeleted(Element e);
	
	/**
	 * An item has been added
	 * @param i the item
	 */
	public void itemAdded(Item i);
	
	/**
	 * An ItemClass has been added
	 * @param c the ItemClass
	 */
	public void itemClassAdded(ItemClass c);
	
	/**
	 * An Element has been modified
	 * @param e the element
	 */
	public void elementModified(Element e);
	
	/**
	 * Tells the listener to focus on the given Item
	 * @param i the Item
	 */
	public void focusOnItem (final Item i);
	
	/**
	 * The database is now open
	 */
	public void databaseOpened();
	
	/**
	 * The database is now closed
	 */
	public void databaseClosed();
}
